export interface ISwaggerResource {
  name: string
  url: string
  swaggerVersion?: string
  location?: string
  id?: string
  paths?: any[]
}

export interface Schema {
  $ref: string
  originalRef: string
}

export interface Parameter {
  name: string
  in: string
  description: string
  required: boolean
  type: string
  format?: string
}

export interface Tag {
  name: string
  description: string
}

export interface Contact {
  name: string
  url: string
  email: string
}

export interface Info {
  title: string
  description: string
  version: string
  termsOfService: string
  contact: Contact
  license: string
  licenseUrl: string
}

export type Definitions = Record<string, any>
export type Paths = Record<string, any>

export interface IDocket {
  swagger: string
  info: Info
  host: string
  basePath: string
  tags: Tag[]
  paths: Paths
  definitions: Definitions
  components: Record<string, any>
  [x: string]: any
}
